package plus;

import plus.exp.Exp;
import plus.run.Emit;
import plus.run.VM;

abstract class SProc extends BIF {
	SProc(String name, Type[] domain, Type range) { super(name, domain, range); }
	M_System home;
	int id;
	abstract void call();
	@Override public void compileCall(Exp[] es) {
		for (Exp e: es) e.compilePush();
		Emit.asm(VM.CSP);
		Emit.asm(home.sysModID);
		Emit.asm(id);
	}
}
